دسته بندی ها
09:53 1398/09/21

عدم پشتیبانی استیمول سافت از فونت های فارسی

مشخصات سوال کننده :
کاربر : webarko     امتیاز کاربر : 3     رتبه کاربر : 136
دسته بندی : Asp.net Core Asp.net Mvc Css استيمول سافت

به این سوال امتیاز بدهید    1
تعداد بازدید این سوال : 6750
پاسخ دهنده : Sowgandi 13:07 1398/09/21

سلام. این مشکل بخاطر تنظیم نبودن زبان فارسی در ویندوز است. به قسمت کنترل پنل برید و در قسمت زبان فرمت زبان رو به فارسی تغییر بدید. برای راهنمایی در مورد این کار به لینک زیر مراجعه کنید.

تنظیمات زبان فارسی برای ویندوز Vista ، 8 ، 7 + ویدیو آموزشی

موفق باشید.

به این پاسخ امتیاز بدهید    0
امتیاز: 871 رتبه: 3
پاسخ دهنده : pedram_khan 13:56 1398/09/21

گاهی اوقات هم این مشکل میتونه بخاطر خود فونت مورد استفاده باشه. اگر میگفتید که فونت مورد استفاده شما در استیمول سافت هم چی بوده شاید بهتر میشد کمک کرد.

به این پاسخ امتیاز بدهید    0
امتیاز: 277 رتبه: 6
پاسخ دهنده : webarko 11:03 1398/09/22

ممنون دوستان اما هنوز مشکلم پا برجاست... در جواب  دوست عزیز من از فونت های وزیر و ساحل و حتی تهوما استفاده کردم اما نشد،  مشکل من اینه نمیدونم این فونت رو چه طوری همراه گزارش بفرستم که روی هر سیستم دیگه گزارش کار کنه بهم ریختگی نداشته باشه.

سپاس از توجه شما

به این پاسخ امتیاز بدهید    0
امتیاز: 3 رتبه: 136
پاسخ دهنده : Sowgandi 12:40 1398/09/22

دوست عزیز شما نمیتونید فونت رو با گزارش ارسال کنید برای رفع این مشکل باید فونت مورد نظر روی سیستم مقصد نصب بشه. همون طوری که روی سیستم خودتون نصب کردید.

به این پاسخ امتیاز بدهید    1
امتیاز: 871 رتبه: 3
پاسخ دهنده : mobile_app 14:13 1398/09/22

از فونت هایی استفاده کنید که روی همه ویندوز ها به صورت پیش فرض هست. ضمنا یه نکته دیگه هم اینجا مهمه. شما فیلدهای خودتون داخل دیتابیس رو به چه صورتی تعریف کردید؟ varchar یا nvarchar ؟

این موضوع هم میتونه تاثیر داشته باشه هنگام نمایش گزارش با استیمول سافت

به این پاسخ امتیاز بدهید    0
امتیاز: 18 رتبه: 40
پاسخ دهنده : mohammad-i 10:57 1398/09/24

طبق گفته دوستان بهترین کار اینه که از فونت هایی استفاده کنید که توی همه سیستم ها پیشفرض وجود داشته باشه.

ظاهرا راه های دیگه ای هم هست مثل Embed فونت. ولی من به نتیجه ای نرسیدم.

به این پاسخ امتیاز بدهید    0
امتیاز: 260 رتبه: 7
پاسخ دهنده : saedbfd 00:44 1399/04/26

سلام

 

برای استفاده از فونت های فارسی مثل B Mitra بهتره فونت در هاست یا سروری که استفاده می کنید وجود داشته باشه. اما اگر فونت در هاست وجود نداره کافیه فونت نسخه وب رو دانلود کنید. (مثلا توی گوگل سرچ کنید دانلود فونت B Mitra نسخه وب) و فونت رو دانلود کنید. نسخه ttf فونت رو در روت پروژه wwwroot کپی کنید و سپس قبل از اینکه گزارش رو نمایش بدید یعنی دقیقا قبل از return فونت رو به صورت پیش فرض برای گزارش انتخاب کنید

 

public IActionResult Print()
{        
    StiReport report = new StiReport();
    report["param1"] = "yourParameter";
    Stimulsoft.Base.StiFontCollection.AddFontFile("wwwroot/fonts/bmitra/B_Mitra.ttf");
    report.Load(StiNetCoreHelper.MapPath(this, "wwwroot/reports/UserLeave.mrt"));
    return StiNetCoreReportResponse.PrintAsPdf(report);
}

 

در قطعه کد بالا فونت در روت پروژه و در فولدر fonts و فولدر bmitra کپی شده و از این ببعد فونت پیش فرض پروژه این فونت میشه.

 

توسط این کار میتونید فونت پیش فرض در استیمول سافت رو تغییر بدید.

ویرایش شده در پنج شنبه 26 تیر 1399 ساعت 00:46:29
به این پاسخ امتیاز بدهید    3
امتیاز: 1654 رتبه: 1
2 نظر
dehghani1402 : باسلام یه مشکل بزرگ که تقریبا روی همه فونت های فارسی هست خروجی pdf در اندروید هست که نشون نمیده واقعا خیلی تلاش کردم اما حل نشد. آیا راه حلی هست؟

امتیاز کاربر : 0   رتبه کاربر : 7017   تاریخ ثبت : 07:37 1402/09/11
jafaribijan : سلام و وقت بخیر من دقیقاً همین کد رو نوشتم در محیط خود دیزاینر گزارش مشکلی ندارم ولی در محیط وب به مشکل بر می خورم

امتیاز کاربر : 0   رتبه کاربر : 7017   تاریخ ثبت : 11:52 1403/05/19
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود